﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Verse.Platform.Data
{
    public class VD5
    {
        
    }

    class _VD5
    {
        _VD5()
        {
            InitDicA();
            InitDicB();
        }
        private Dictionary<int, Char> dicA = new Dictionary<int, Char>();
        private Dictionary<String, int> dicB = new Dictionary<string, int>();

        private void InitDicA()
        {
            #region BigLetter
            dicA.Add(0, 'Q');
            dicA.Add(1, 'W');
            dicA.Add(2, 'E');
            dicA.Add(3, 'R');
            dicA.Add(4, 'T');
            dicA.Add(5, 'Y');
            dicA.Add(6, 'U');
            dicA.Add(7, 'I');
            dicA.Add(8, 'O');
            dicA.Add(9, 'P');
            dicA.Add(10, 'A');
            dicA.Add(11, 'S');
            dicA.Add(12, 'D');
            dicA.Add(13, 'F');
            dicA.Add(14, 'G');
            dicA.Add(15, 'H');
            dicA.Add(16, 'J');
            dicA.Add(17, 'K');
            dicA.Add(18, 'L');
            dicA.Add(19, 'Z');
            dicA.Add(20, 'X');
            dicA.Add(21, 'C');
            dicA.Add(22, 'V');
            dicA.Add(23, 'B');
            dicA.Add(24, 'N');
            dicA.Add(25, 'M');
            #endregion

            #region LitLetter
            dicA.Add(26, 'q');
            dicA.Add(27, 'w');
            dicA.Add(28, 'e');
            dicA.Add(29, 'r');
            dicA.Add(30, 't');
            dicA.Add(31, 'y');
            dicA.Add(32, 'u');
            dicA.Add(33, 'i');
            dicA.Add(34, 'o');
            dicA.Add(35, 'p');
            dicA.Add(36, 'a');
            dicA.Add(37, 's');
            dicA.Add(38, 'd');
            dicA.Add(39, 'f');
            dicA.Add(40, 'g');
            dicA.Add(41, 'h');
            dicA.Add(42, 'j');
            dicA.Add(43, 'k');
            dicA.Add(44, 'l');
            dicA.Add(45, 'z');
            dicA.Add(46, 'x');
            dicA.Add(47, 'c');
            dicA.Add(48, 'v');
            dicA.Add(49, 'b');
            dicA.Add(50, 'n');
            dicA.Add(51, 'm');
            #endregion

            #region Symbol
            dicA.Add(52, '`');
            dicA.Add(53, '~');
            dicA.Add(54, '!');
            dicA.Add(55, '@');
            dicA.Add(56, '#');
            dicA.Add(57, '$');
            dicA.Add(58, '%');
            dicA.Add(59, '^');
            dicA.Add(60, '&');
            dicA.Add(61, '*');
            dicA.Add(62, '(');
            dicA.Add(63, ')');
            dicA.Add(64, '_');
            dicA.Add(65, '-');
            dicA.Add(66, '=');
            dicA.Add(67, '+');

            dicA.Add(68, '|');
            dicA.Add(69, '\\');
            dicA.Add(70, ',');
            dicA.Add(71, '<');
            dicA.Add(72, '>');
            dicA.Add(73, '/');
            dicA.Add(74, '?');
            dicA.Add(75, ';');
            dicA.Add(76, ':');
            dicA.Add(77, '\'');
            dicA.Add(78, '\'');
            dicA.Add(79, '{');
            dicA.Add(80, '}');
            dicA.Add(81, '[');
            dicA.Add(82, ']');
            #endregion
        }

        private void InitDicB()
        {
            dicB.Add("Q", 0);
            dicB.Add("W", 1);
            dicB.Add("A", 2);
            dicB.Add("S", 3);
            dicB.Add("D", 4);
            dicB.Add("C", 5);
            dicB.Add("G", 6);
            dicB.Add("J", 7);
            dicB.Add("O", 8);
            dicB.Add("P", 9);
        }

        protected String Encrypt(String content)
        {
            //first. split string to char array
            Char[] content_letters = content.ToCharArray();
            //second. translate char to num
            int num = 0;
            for (int i = 0; i < content_letters.Length; i++)
            {
                
            }
        }
    }
}
